package com.xzqwjw.taskmanager.utility;

import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;

public class DialogHelper {

	public DialogHelper() {
	}

	/**
	 * ������ͨ�Ի���
	 * 
	 * @param objContext
	 *            ������ ����
	 * @param intIconID
	 *            ͼ�꣬�磺R.drawable.icon ����
	 * @param strTitle
	 *            ���� ����
	 * @param strMessage
	 *            ��ʾ���� ����
	 * @param strBtnName
	 *            ��ť���� ����
	 * @param objListener
	 *            ����������ʵ��android.content.DialogInterface.OnClickListener�ӿ� ����
	 * @return
	 */
	public static Dialog createNormalDialog(Context objContext, int intIconID,
			String strTitle, String strMessage, String strBtnName,
			android.view.View.OnClickListener objListener) {
		Dialog objDialog = null;
		AlertDialog.Builder objBuilder = new android.app.AlertDialog.Builder(
				objContext);
		// ���öԻ����ͼ��
		objBuilder.setIcon(intIconID);
		// ���öԻ���ı���
		objBuilder.setTitle(strTitle);
		// ���öԻ������ʾ����
		objBuilder.setMessage(strMessage);
		// ��Ӱ�ť��android.content.DialogInterface.OnClickListener.OnClickListener
		objBuilder.setPositiveButton(strBtnName, (OnClickListener) objListener);
		// ����һ����ͨ�Ի���
		objDialog = objBuilder.create();
		return objDialog;
	}

	/**
	 * �����б�Ի���
	 * 
	 * @param objContext
	 *            ������ ����
	 * @param intIconID
	 *            ͼ�꣬�磺R.drawable.icon ����
	 * @param strTitle
	 *            ���� ����
	 * @param intItemsID
	 *            �ַ���������Դid ����
	 * @param objListener
	 *            ����������ʵ��android.content.DialogInterface.OnClickListener�ӿ� ����
	 * @return
	 */
	public static Dialog createListDialog(Context objContext, int intIconID,
			String strTitle, int intItemsID, OnClickListener objListener) {
		Dialog objDialog = null;
		AlertDialog.Builder objBuilder = new android.app.AlertDialog.Builder(
				objContext);
		// ���öԻ����ͼ��
		objBuilder.setIcon(intIconID);
		// ���öԻ���ı���
		objBuilder.setTitle(strTitle);
		// ��Ӱ�ť��android.content.DialogInterface.OnClickListener.OnClickListener
		objBuilder.setItems(intItemsID, objListener);
		// ����һ���б�Ի���
		objDialog = objBuilder.create();
		return objDialog;
	}

	/**
	 * ������ѡ��ť�Ի���
	 * 
	 * @param objContext
	 *            ������ ����
	 * @param intIconID
	 *            ͼ�꣬�磺R.drawable.icon ����
	 * @param strTitle
	 *            ���� ����
	 * @param intItemsID
	 *            �ַ���������Դid ����
	 * @param objListener
	 *            ��ѡ��ť�����������ʵ��android.content.DialogInterface.OnClickListener�ӿ�
	 *            ����
	 * @param strBtnName
	 *            ��ť���� ����
	 * @param listener2
	 *            ��ť����������ʵ��android.content.DialogInterface.OnClickListener�ӿ� ����
	 * @return
	 */
	public static Dialog createRadioDialog(Context objContext, int intIconID,
			String strTitle, int intItemsID, OnClickListener objListener,
			String strBtnName, OnClickListener objListener2) {
		Dialog objDialog = null;
		android.app.AlertDialog.Builder objBuilder = new android.app.AlertDialog.Builder(
				objContext);
		// ���öԻ����ͼ��
		objBuilder.setIcon(intIconID);
		// ���öԻ���ı���
		objBuilder.setTitle(strTitle);
		// 0: Ĭ�ϵ�һ����ѡ��ť��ѡ��
		objBuilder.setSingleChoiceItems(intItemsID, 0, objListener);
		// ���һ����ť
		objBuilder.setPositiveButton(strBtnName, objListener2);
		// ����һ����ѡ��ť�Ի���
		objDialog = objBuilder.create();
		return objDialog;
	}

	/**
	 * ������ѡ�Ի���
	 * 
	 * @param objContext
	 *            ������ ����
	 * @param intIconID
	 *            ͼ�꣬�磺R.drawable.icon ����
	 * @param strTitle
	 *            ���� ����
	 * @param intItemsID
	 *            �ַ���������Դid ����
	 * @param flags
	 *            ��ʼ��ѡ��� ����
	 * @param listener
	 *            ��ѡ��ť�����������ʵ��android.content.DialogInterface.
	 *            OnMultiChoiceClickListener�ӿ� ����
	 * @param btnName
	 *            ��ť���� ����
	 * @param listener2
	 *            ��ť����������ʵ��android.content.DialogInterface.OnClickListener�ӿ� ����
	 * @return
	 */
	public static Dialog createCheckBoxDialog(Context objContext,
			int intIconID, String strTitle, int intItemsID, boolean[] aryFlags,
			DialogInterface.OnMultiChoiceClickListener objListener,
			String btnName, OnClickListener listener2) {
		Dialog objDialog = null;
		android.app.AlertDialog.Builder objBuilder = new android.app.AlertDialog.Builder(
				objContext);
		// ���öԻ����ͼ��
		objBuilder.setIcon(intIconID);
		// ���öԻ���ı���
		objBuilder.setTitle(strTitle);
		objBuilder.setMultiChoiceItems(intItemsID, aryFlags, objListener);
		// ���һ����ť
		objBuilder.setPositiveButton(btnName, listener2);
		// ����һ����ѡ�Ի���
		objDialog = objBuilder.create();
		return objDialog;
	}
}
